package com.cskaoyan.javase.basic._7block;
/**
 * 代码块的概念
 * 代码块的定义是：
 *      由若干条Java语句组成，并且用一对大括号括起来的结构，叫做代码块。
 *
 * Java类名后面的大括号,以及大括号中的所有代码,合起来称之为"类体"
 * 类体不是代码块
 * 除了类体以外,基本上Java代码中所有出现的大括号都是代码块.主要包括:
 *      1.方法的大括号(方法体)
 *      2.类体中直接写一个大括号
 *      3.以上结构中的大括号(比如if,for等结构)
 *
 * 代码块的作用:
 *      代码块决定了块中的变量的作用域，也就是代码块中的变量仅在当前代码块内部生效。这意味着同一个代码块中，不可能有同名的变量。
 *      定义在代码块中的变量，被代码块限制了作用域，称之为局部变量。
 *      代码块中的位置属于局部位置
 *
 * @since 09:59
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    // 代码块
    {
        {

        }
    }
    // 方法的大括号(方法体) 也是代码块
    public static void main(String[] args) {
        int a = 10;
        if (true){
            // Variable 'a' is already defined in the scope
            // int a = 10;
            int b = 10;
        }
        int b = 10;
        {
            // int b = 10;
        }
    }
}
